.\" Copyright (c) 2011-2012 Devin Teske
.\" All rights reserved.
.\"
.\" Redistribution and use in source and binary forms, with or without
.\" modification, are permitted provided that the following conditions
.\" are met:
.\" 1. Redistributions of source code must retain the above copyright
.\"    notice, this list of conditions and the following disclaimer.
.\" 2. Redistributions in binary form must reproduce the above copyright
.\"    notice, this list of conditions and the following disclaimer in the
.\"    documentation and/or other materials provided with the distribution.
.\"
.\" THIS SOFTWARE IS PROVIDED BY THE AUTHOR AND CONTRIBUTORS ``AS IS'' AND
.\" ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE
.\" IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE
.\" ARE DISCLAIMED.  IN NO EVENT SHALL THE AUTHOR OR CONTRIBUTORS BE LIABLE
.\" FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL
.\" DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS
.\" OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION)
.\" HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT
.\" LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY
.\" OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
.\" SUCH DAMAGE.
.\"
.Dd January 6, 2016
.Dt BEASTIE.4TH 8
.Os
.Sh NAME
.Nm beastie.4th
.Nd FreeBSD ASCII art boot module
.Sh DESCRIPTION
The file that goes by the name of
.Nm
is a set of commands designed to draw the ASCII art FreeBSD mascot
\(en known simply as
.Em beastie
\(en to the right of the boot loader menu.
The commands of
.Nm
by themselves are not enough for most uses.
Please refer to the
examples below for the most common situations, and to
.Xr loader 8
for additional commands.
.Pp
Before using any of the commands provided in
.Nm ,
it must be included
through the command:
.Pp
.Dl include beastie.4th
.Pp
This line is present in the default
.Pa /boot/loader.rc
file, so it is not needed (and should not be re-issued) in a normal setup.
.Pp
The commands provided by it are:
.Pp
.Bl -tag -width disable-module_module -compact -offset indent
.It Ic draw-beastie
Draws the FreeBSD logo.
.Pp
The logo that is drawn is configured by setting the
.Ic loader_logo
variable in
.Xr loader.conf 5
to one of
.Dq Li beastie ,
.Dq Li beastiebw ,
.Dq Li fbsdbw ,
.Dq Li orb ,
and
.Dq Li orbbw
(the default).
.Pp
The position of the logo can be configured by setting the
.Ic loader_logo_x
and
.Ic loader_logo_y
variables in
.Xr loader.conf 5 .
The default values are 46 (x) and 4 (y).
.Pp
.It Ic clear-beastie
Clears the screen of beastie.
.Pp
.It Ic beastie-start
Initializes the interactive boot loader menu.
.Pp
The
.Ic loader_delay
variable can be configured in
.Xr loader.conf 5
to the number of seconds you would like to delay loading the boot menu.
During the delay the user can press Ctrl-C to fall back to
.Ic autoboot
or ENTER to proceed.
The default behavior is to not delay.
.El
.Pp
The environment variables that effect its behavior are:
.Bl -tag -width bootfile -offset indent
.It Va loader_logo
Selects the desired logo in the beastie boot menu.
Possible values are:
.Dq Li fbsdbw ,
.Dq Li beastie ,
.Dq Li beastiebw ,
.Dq Li orb ,
.Dq Li orbbw
(default), and
.Dq Li none .
.It Va loader_logo_x
Sets the desired column position of the logo.
Default is 46.
.It Va loader_logo_y
Sets the desired row position of the logo.
Default is 4.
.It Va beastie_disable
If set to
.Dq YES ,
the beastie boot menu will be skipped.
The beastie boot menu is always skipped if running non-x86 hardware.
.It Va loader_delay
If set to a number higher than zero, introduces a delay before starting the
beastie boot menu.
During the delay the user can press either Ctrl-C to skip the menu or ENTER
to proceed to the menu.
The default is to not delay when loading the menu.
.El
.Sh FILES
.Bl -tag -width /boot/loader.4th -compact
.It Pa /boot/loader
The
.Xr loader 8 .
.It Pa /boot/beastie.4th
.Nm
itself.
.It Pa /boot/loader.rc
.Xr loader 8
bootstrapping script.
.El
.Sh EXAMPLES
Standard i386
.Pa /boot/loader.rc :
.Pp
.Bd -literal -offset indent -compact
include /boot/beastie.4th
beastie-start
.Ed
.Pp
Set a different logo in
.Xr loader.conf 5 :
.Pp
.Bd -literal -offset indent -compact
loader_logo="beastie"
.Ed
.Sh SEE ALSO
.Xr loader.conf 5 ,
.Xr loader 8 ,
.Xr loader.4th 8
.Sh HISTORY
The
.Nm
set of commands first appeared in
.Fx 5.1 .
.Sh AUTHORS
The
.Nm
set of commands was written by
.An -nosplit
.An Scott Long Aq scottl@FreeBSD.org ,
.An Aleksander Fafula Aq alex@fafula.com
and
.An Devin Teske Aq dteske@FreeBSD.org .
